/**
 * 版权所有(C)，上海***股份有限公司，2018，所有权利保留。
 * 
 * 项目名：	shop-score-web
 * 文件名：	ScoreController.java
 * 模块说明：	
 * 修改历史：
 * 2018年12月30日 - Administrator - 创建。
 */
package com.study.springcloud.shop;

import java.util.Random;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.netflix.hystrix.contrib.javanica.annotation.HystrixCommand;

/**
 * @author Administrator
 *
 */
@RestController
@RequestMapping("/score/*")
public class ScoreController {

  @GetMapping("add/{userId}")
  @HystrixCommand(fallbackMethod = "fallback")
  public void addUserScore(@PathVariable("userId") String userId) throws Exception {
    Random random = new Random();
    Integer score = random.nextInt(100);
    System.out.println("shop-score-service：已成功为用户" + userId + "增加" + score + "个积分");
    throw new Exception("shop-score-service：为用户增加积分接口异常");
  }

  /**
   * 这里的方法参数要和addUserScore一致
   * 
   * @param userId
   */
  public void fallback(String userId) {
    System.out.println("shop-score-service：为用户增加积分接口报错，降级处理");
  }
}
